home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 April: Mac OS SDK / Dev.CD Apr 96 SDK / Dev.CD Apr 96 SDK1.toast / Development Kits (Disc 1) / OpenDoc / Sample Code / PartMaker 4.4 / PartMaker Documents / Picture Viewer• / Picture Viewer•.rsrc / dFRK_5001 < prev    next >
Encoding:
Text File  |  1995-12-12  |  18.3 KB  |  359 lines

  1. (*
  2.     This script was generated from "Save Project As Script"
  3.     
  4.     Generated from:
  5.     
  6.     Project:    PictureViewer PPC.π
  7.     Folder:        Bradshaw:Picture Viewer:
  8.     Date:        Tuesday, December 12, 1995 8:12:13 PM
  9. *)
  10.  
  11. global gSPMFolder
  12. global gTargetProjectFolder
  13. global gTargetProjectIndex
  14.  
  15. property gOriginalProjectName : "PictureViewer PPC.π"
  16.  
  17. on GetParentFolder(filePath)
  18.     set pathLength to length of filePath
  19.     set folderEnd to 0
  20.     repeat with i from pathLength to 1 by -1
  21.         if (character i of filePath is ":") then
  22.             set folderEnd to i
  23.             exit repeat
  24.         end if
  25.     end repeat
  26.     copy text from character 1 to character folderEnd of filePath to folderToSearch
  27.     return folderToSearch
  28. end GetParentFolder
  29.  
  30. on AddGroup(groupName, parentGroupName)
  31.     tell application "Symantec Project Manager"
  32.         tell project document gTargetProjectIndex
  33.             try
  34.                 if (not (group groupName exists)) then
  35.                     if (parentGroupName is not "") then
  36.                         create new group as groupName at end of group named parentGroupName
  37.                     else
  38.                         create new group as groupName at end
  39.                     end if
  40.                     set is_open of group named groupName to true
  41.                 end if
  42.             on error
  43.                 display dialog "An error occured while creating group " & segmentName & "."
  44.                 return
  45.             end try
  46.         end tell
  47.     end tell
  48. end AddGroup
  49.  
  50. on AddProjectEntry(entryName, path, mode, groupName)
  51.     if (mode is "system")
  52.         set fileName to gSPMFolder & path & entryName
  53.     else if (mode is "project")
  54.         set fileName to gTargetProjectFolder & path & entryName
  55.     else
  56.         set fileName to path & entryName
  57.     end if
  58.     tell application "Symantec Project Manager"
  59.         tell project document gTargetProjectIndex
  60.             try
  61.                 if (groupName is not "") then
  62.                     if (not (source entryName of group groupName exists)) then
  63.                         create new source as file fileName at end of group named groupName
  64.                     end if
  65.                 else
  66.                     if (not (source entryName exists)) then
  67.                         create new source as file fileName at end
  68.                     end if
  69.                 end if
  70.             on error
  71.                 display dialog "An error occured while creating source " & entryName & "."
  72.             end try
  73.         end tell
  74.     end tell
  75. end AddProjectEntry
  76.  
  77. on GetProjectIndex(project)
  78.     -- Find the index of the front project.
  79.     -- We should be able to just say "set gTargetProjectIndex to index of front project document)"
  80.     -- but there is a bug in the SPM right now where it doesn't index projects by window layering.
  81.     tell application "Symantec Project Manager"
  82.         set projectName to full path name of project
  83.         set projectCount to count project documents
  84.         repeat with i from 1 to projectCount
  85.             set fpn to full path name of project document i
  86.             if (fpn is projectName) then
  87.                 return i
  88.             end if
  89.         end repeat
  90.     end tell
  91.     return 0
  92. end GetProjectIndex
  93.  
  94. on ConfirmTargetProject(targetProjectIndex)
  95.     set hitOK to true
  96.     tell app "Symantec Project Manager"
  97.         -- Confirm the project
  98.         set promptString to "Update project \"" & name of project document targetProjectIndex & "\"?"
  99.         set confirmResult to display dialog promptString buttons {"New Project", "Cancel", "OK"} default button 3
  100.     end tell
  101.     return button returned of confirmResult
  102. end ConfirmTargetProject
  103.  
  104. on ChooseTargetProject()
  105.     tell app "Symantec Project Manager"
  106.         if number of project document = 0 then
  107.             set promptForNewProject to true
  108.             set targetProjectIndex to 0
  109.         --else if (class of front document is project document) then
  110.         --    set targetProjectIndex to my GetProjectIndex(front document)
  111.         else if (exists main_project) then
  112.             set targetProjectIndex to index of main_project
  113.         else
  114.             set targetProjectIndex to 0
  115.         end if
  116.     
  117.         if (targetProjectIndex > 0) then
  118.             set confirmButton to my ConfirmTargetProject(targetProjectIndex)
  119.             if (confirmButton is not "OK") then
  120.                 set promptForNewProject to true
  121.             else
  122.                 set promptForNewProject to false
  123.             end if
  124.         else
  125.             set promptForNewProject to true
  126.         end if
  127.         
  128.         if (promptForNewProject) then
  129.             try
  130.                 set newProjectSpec to new file with prompt "New Project Name:" default name gOriginalProjectName
  131.                 create new project document as file newProjectSpec
  132.                 set targetProjectIndex to my GetProjectIndex(front document)
  133.             on error
  134.                 set targetProjectIndex to 0
  135.             end try
  136.         end if
  137.     end tell
  138.     return targetProjectIndex
  139. end ChooseTargetProject
  140.  
  141. tell application "Symantec Project Manager"
  142.     activate
  143.     set gTargetProjectIndex to my ChooseTargetProject()
  144.     if (gTargetProjectIndex is 0)
  145.         return
  146.     end if
  147.     set gSPMFolder to my GetParentFolder(filespec as string)
  148.     set gTargetProjectFolder to my GetParentFolder(filespec of project document gTargetProjectIndex as string)
  149. end tell
  150.  
  151. -- Add all the groups
  152. my AddGroup("PictureViewer", "", gTargetProjectIndex)
  153. my AddGroup("SOM Interface", "", gTargetProjectIndex)
  154. my AddGroup("OpenDoc Utilities", "", gTargetProjectIndex)
  155. my AddGroup("Resources", "", gTargetProjectIndex)
  156. my AddGroup("OpenDoc Libraries", "", gTargetProjectIndex)
  157. my AddGroup("System Libraries", "", gTargetProjectIndex)
  158.  
  159. -- Add all the source files
  160. my AddProjectEntry("QuickDrawGXLib.xcoff", "Macintosh Libraries:PPC Libraries:", "system", "System Libraries", gTargetProjectIndex)
  161. my AddProjectEntry("PPCANSI.o", "Standard Libraries:", "system", "System Libraries", gTargetProjectIndex)
  162. my AddProjectEntry("OpenDoc PPCRuntime.o", "OpenDoc (SPM):OpenDoc PPCRuntime:", "system", "System Libraries", gTargetProjectIndex)
  163. my AddProjectEntry("MathLib.xcoff", "Macintosh Libraries:PPC Libraries:", "system", "System Libraries", gTargetProjectIndex)
  164. my AddProjectEntry("InterfaceLib.xcoff", "Macintosh Libraries:PPC Libraries:", "system", "System Libraries", gTargetProjectIndex)
  165. my AddProjectEntry("somlib", "SOM (SPM):", "system", "System Libraries", gTargetProjectIndex)
  166. my AddProjectEntry("OpenDoc User Interface.stub", "OpenDoc (SPM):OpenDoc:Libraries:PEF:", "system", "OpenDoc Libraries", gTargetProjectIndex)
  167. my AddProjectEntry("OpenDoc Storage.stub", "OpenDoc (SPM):OpenDoc:Libraries:PEF:", "system", "OpenDoc Libraries", gTargetProjectIndex)
  168. my AddProjectEntry("OpenDoc Layout.stub", "OpenDoc (SPM):OpenDoc:Libraries:PEF:", "system", "OpenDoc Libraries", gTargetProjectIndex)
  169. my AddProjectEntry("OpenDoc Imaging.stub", "OpenDoc (SPM):OpenDoc:Libraries:PEF:", "system", "OpenDoc Libraries", gTargetProjectIndex)
  170. my AddProjectEntry("OpenDoc Core.stub", "OpenDoc (SPM):OpenDoc:Libraries:PEF:", "system", "OpenDoc Libraries", gTargetProjectIndex)
  171. my AddProjectEntry("Memory Manager.stub", "OpenDoc (SPM):OpenDoc:Libraries:PEF:", "system", "OpenDoc Libraries", gTargetProjectIndex)
  172. my AddProjectEntry("StdCLib.xcoff", "Standard Libraries:Apple PPC Libraries:", "system", "System Libraries", gTargetProjectIndex)
  173. my AddProjectEntry("OpenDoc System Data.stub", "OpenDoc (SPM):OpenDoc:Libraries:PEF:", "system", "OpenDoc Libraries", gTargetProjectIndex)
  174. my AddProjectEntry("SCPCHeaders++.pch", "Build Support:", "system", "", gTargetProjectIndex)
  175. my AddProjectEntry("PictureViewer.cpp", "Source:", "project", "PictureViewer", gTargetProjectIndex)
  176. my AddProjectEntry("AltPoint.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  177. my AddProjectEntry("AltPoly.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  178. my AddProjectEntry("Except.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  179. my AddProjectEntry("FlipEnd.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  180. my AddProjectEntry("FocusLib.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  181. my AddProjectEntry("ISOStr.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  182. my AddProjectEntry("IText.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  183. my AddProjectEntry("LinkList.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  184. my AddProjectEntry("ODDebug.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  185. my AddProjectEntry("ODMemory.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  186. my AddProjectEntry("ODUtils.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  187. my AddProjectEntry("PPCToolLibs.o", "Macintosh Libraries:PPC Libraries:", "system", "System Libraries", gTargetProjectIndex)
  188. my AddProjectEntry("PasclStr.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  189. my AddProjectEntry("PictureViewer.PPC.rsrc", "Objects:", "project", "Resources", gTargetProjectIndex)
  190. my AddProjectEntry("PictureViewerGlobals.cpp", "Source:", "project", "PictureViewer", gTargetProjectIndex)
  191. my AddProjectEntry("SC++ PictureViewerInit.cpp", "Source:", "project", "SOM Interface", gTargetProjectIndex)
  192. my AddProjectEntry("OpenDoc Binding.stub", "OpenDoc (SPM):OpenDoc:Libraries:PEF:", "system", "OpenDoc Libraries", gTargetProjectIndex)
  193. my AddProjectEntry("DragLib.xcoff", "Macintosh Libraries:PPC Libraries:", "system", "System Libraries", gTargetProjectIndex)
  194. my AddProjectEntry("StdTypIO.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  195. my AddProjectEntry("StorUtil.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  196. my AddProjectEntry("UseRsrcM.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  197. my AddProjectEntry("WinUtils.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  198. my AddProjectEntry("BArray.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  199. my AddProjectEntry("DlogUtil.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  200. my AddProjectEntry("LineOps.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  201. my AddProjectEntry("ODMathM.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  202. my AddProjectEntry("PlfmFile.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  203. my AddProjectEntry("ODNew.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  204. my AddProjectEntry("Crawl.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  205. my AddProjectEntry("TempIter.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  206. my AddProjectEntry("TempObj.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  207. my AddProjectEntry("DocUtils.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  208. my AddProjectEntry("InfoUtil.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  209. my AddProjectEntry("OrdColl.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  210. my AddProjectEntry("StdIFmIO.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  211. my AddProjectEntry("BndNSUtl.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  212. my AddProjectEntry("EditrSet.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  213. my AddProjectEntry("NmSpcUtl.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  214. my AddProjectEntry("RefCtCol.cpp", "OpenDoc (SPM):OpenDoc:OpenDoc Utilities:Implementation:", "system", "OpenDoc Utilities", gTargetProjectIndex)
  215. my AddProjectEntry("PictureViewerUtils.cpp", "Source:", "project", "PictureViewer", gTargetProjectIndex)
  216. my AddProjectEntry("SampleCollections.cpp", "Source:", "project", "PictureViewer", gTargetProjectIndex)
  217.  
  218. tell application "Symantec Project Manager"
  219.     tell project document gTargetProjectIndex
  220.  
  221.         -- Set up project options
  222.         set compact_on_close to false
  223.         set confirm_updates to true
  224.         set update_subprojects to true
  225.         set check_file_dates to false
  226.         set run_with_debugger to true
  227.  
  228.         -- Set up project type options
  229.         set target_type to PowerPC_library
  230.         set file_type to "shlb"
  231.         set file_creator to "PCVW"
  232.         set SIZE_flags to 22720
  233.         set partition_size to 1024
  234.         set minimum_partition_size to 1024
  235.         set ask_for_target to true
  236.         set target_name to file (gTargetProjectFolder & "PictureViewer (SPM)")
  237.         set merge_68k_application to false
  238.         set source_68k_application to file ""
  239.         set custom_stack_size to 0
  240.         set export_all_symbols to false
  241.         set current_lib_version to 16809984
  242.         set lib_definition_version to 0
  243.  
  244.         -- Set up linker options
  245.         set linker_to_use to incremental_linker
  246.         set smart_link to true
  247.         set generate_link_map to false
  248.         set update_subprojects to true
  249.         set generate_cross_references to false
  250.         set use_makesym to false
  251.         set ppclink_options to "-main __cplusstart"
  252.         set makesym_options to ""
  253.         set makepef_options to "-l 'AppleScriptLib.xcoff.o=AppleScriptLib' ∂" & return & ¬
  254. "-l 'InterfaceLib.xcoff.o=InterfaceLib' ∂" & return & ¬
  255. "-l 'DragLib.xcoff.o=DragLib' ∂" & return & ¬
  256. "-l 'MathLib.xcoff.o=MathLib' ∂" & return & ¬
  257. "-l 'ObjectSupportLib.xcoff.o=ObjectSupportLib' ∂" & return & ¬
  258. "-l 'QuickTimeLib.xcoff.o=QuickTime' ∂" & return & ¬
  259. "-l 'StdCLib.xcoff.o=StdCLib' "
  260.  
  261.         -- Set up extensions    
  262.         set extension_map to {¬
  263.             {the_extension:".c", the_translator:"PowerPC C"},¬
  264.             {the_extension:".cp", the_translator:"PowerPC C++"},¬
  265.             {the_extension:".cpp", the_translator:"PowerPC C++"},¬
  266.             {the_extension:".o", the_translator:"XCOFF Converter"},¬
  267.             {the_extension:".pch", the_translator:"PowerPC C++"},¬
  268.             {the_extension:".r", the_translator:"SPM Rez"},¬
  269.             {the_extension:".rsrc", the_translator:"Resource Copier"},¬
  270.             {the_extension:".va", the_translator:"Resource Copier"},¬
  271.             {the_extension:".xcoff", the_translator:"XCOFF Converter"}¬
  272.         }
  273.  
  274.         -- Set up project window options
  275.         set order_by to order_by_debugging
  276.         set ascending_order to true
  277.         set show_group_hierarchy to true
  278.         set show_entry_icon to true
  279.         set show_debugging_status to true
  280.         set show_group_membership to false
  281.         set show_translator to false
  282.         set show_type to false
  283.         set show_location to false
  284.         set show_last_modification to false
  285.         set show_code_size to true
  286.         set show_data_size to false
  287.         set show_make_status to true
  288.         set show_projector_status to false
  289.         set font to "Geneva"
  290.         set font_size to "9"
  291.  
  292.         -- Set up "PowerPC C" options
  293.         set ansi of Options "PowerPC C" to true
  294.         set ansi_strict of Options "PowerPC C" to relaxed_ansi
  295.         set read_header_once of Options "PowerPC C" to true
  296.         set chars_unsigned of Options "PowerPC C" to false
  297.         set pack_enums of Options "PowerPC C" to false
  298.         set map_cr of Options "PowerPC C" to false
  299.         set native_language of Options "PowerPC C" to english
  300.         set struct_align of Options "PowerPC C" to align_2
  301.         set global_optimizer of Options "PowerPC C" to true
  302.         set gopt_time of Options "PowerPC C" to optimize_time
  303.         set force_frame of Options "PowerPC C" to false
  304.         set generate_symbolics of Options "PowerPC C" to true
  305.         set error_reporting of Options "PowerPC C" to report_first_few_err
  306.         set generate_warn of Options "PowerPC C" to true
  307.         set warn_unintended_assign of Options "PowerPC C" to true
  308.         set warn_nest_comments of Options "PowerPC C" to true
  309.         set warn_unused_expressions of Options "PowerPC C" to true
  310.         set warn_empty_loops of Options "PowerPC C" to true
  311.         set warn_used_before_set of Options "PowerPC C" to true
  312.         set warn_large_auto of Options "PowerPC C" to true
  313.         set warn_return_addr_auto of Options "PowerPC C" to true
  314.         set warn_unrecognized_pragma of Options "PowerPC C" to true
  315.         set prefix of Options "PowerPC C" to "#include <PPC Macheaders>"
  316.         set check_ptrs of Options "PowerPC C" to true
  317.         set require_protos of Options "PowerPC C" to true
  318.         set infer_protos of Options "PowerPC C" to infer_prototypes
  319.  
  320.         -- Set up "PowerPC C++" options
  321.         set ansi of Options "PowerPC C++" to true
  322.         set ansi_strict of Options "PowerPC C++" to relaxed_ansi
  323.         set read_header_once of Options "PowerPC C++" to true
  324.         set chars_unsigned of Options "PowerPC C++" to false
  325.         set pack_enums of Options "PowerPC C++" to false
  326.         set map_cr of Options "PowerPC C++" to false
  327.         set native_language of Options "PowerPC C++" to english
  328.         set struct_align of Options "PowerPC C++" to align_2
  329.         set global_optimizer of Options "PowerPC C++" to false
  330.         set gopt_time of Options "PowerPC C++" to optimize_time
  331.         set force_frame of Options "PowerPC C++" to false
  332.         set generate_symbolics of Options "PowerPC C++" to true
  333.         set error_reporting of Options "PowerPC C++" to report_first_few_err
  334.         set generate_warn of Options "PowerPC C++" to true
  335.         set warn_unintended_assign of Options "PowerPC C++" to true
  336.         set warn_nest_comments of Options "PowerPC C++" to true
  337.         set warn_unused_expressions of Options "PowerPC C++" to true
  338.         set warn_empty_loops of Options "PowerPC C++" to true
  339.         set warn_used_before_set of Options "PowerPC C++" to true
  340.         set warn_large_auto of Options "PowerPC C++" to true
  341.         set warn_return_addr_auto of Options "PowerPC C++" to true
  342.         set warn_unrecognized_pragma of Options "PowerPC C++" to false
  343.         set prefix of Options "PowerPC C++" to "#include \"SCPCHeaders++\"" & return & ¬
  344. "#pragma options(system_includes_from_project_tree)" & return & ""
  345.         set dont_inline of Options "PowerPC C++" to false
  346.         set warn_old_style_delete of Options "PowerPC C++" to true
  347.         set warn_struct_without_tag of Options "PowerPC C++" to true
  348.         set warn_missing_overloads of Options "PowerPC C++" to true
  349.         set warn_ref_init of Options "PowerPC C++" to true
  350.         set warn_old_style_definition of Options "PowerPC C++" to true
  351.         set warn_cast_incomplete_type of Options "PowerPC C++" to true
  352.  
  353.         -- Set up "Symantec Rez" options
  354.         set Redeclared Types of Options "Symantec Rez" to true
  355.         set prefix of Options "Symantec Rez" to "#define SystemSevenOrLater 1" & return & ""
  356.  
  357.     end tell
  358. end tell
  359.